package com.elitel.frame.web.cfgdbinfo.entity;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonInclude;
import lombok.Data;

import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 数据库连接表(CfgDb)实体类
 *
 * @author makejava
 * @since 2025-05-19 15:28:05
 */
@Data
@JsonInclude(JsonInclude.Include.NON_NULL)
public class CfgDbInfo implements Serializable {
    private static final long serialVersionUID = -10376701048777889L;
    /**
     * 主键
     */
    private String dbKey;
    /**
     * 数据源名称
     */
    private String dbName;
//   库表数
    private Integer dbNum;
    /**
     * 数据源版本
     */
    private String dbVersion;
    /**
     * 链接地址
     */
    private String dbUrl;
    /**
     * 用户
     */
    private String dbUser;
    /**
     * 密码
     */
    private String dbPwd;
    /**
     * 备注
     */
    private String dbMark;
    /**
     * 驱动包名称
     */
    private String dbDrivername;
    /**
     * 数据源唯一标识
     */
    private String dbSign;
    /**
     * 数据库IP地址
     */
    private String dbIp;
    /**
     * 数据库端口
     */
    private String dbPort;
    /**
     * 数据库默认模式
     */
    private String dbSchema;
    /**
     * 操作类型
     */
    private String optType;
    /**
     * 扩展一
     */
    private String ext1;
    /**
     * 扩展二
     */
    private String ext2;
    /**
     * 扩展三
     */
    private String ext3;
    /**
     * 连接状态
     */
    private Long linkStatus;
    /**
     * 联系人
     */
    private String createdBy;
    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private LocalDateTime createdTime;
    /**
     * 备注
     */
    private String remark;
    /**
     * 数据源编码（用户自定义，有可能会变，不能作为外键关联）
     */
    private String dbCode;

    /**
     * 加上此字段是为了兼容老的逻辑, 等后期重构后没有什么用
     */
    private String pcode;

    private String queryKey;


}

